package com.example.campus.service;

import com.example.campus.pojo.dto.*;
import com.example.campus.pojo.entity.User;
import com.example.campus.pojo.vo.UserInfoVO;
import com.example.campus.pojo.vo.UserLoginVO;
import com.example.campus.result.PageResult;

public interface UserService {
    void register(UserRegisterDTO userRegisterDTO);

    UserLoginVO login(UserLoginDTO userLoginDTO);

    UserInfoVO getUserInfo(Long id);

    void updateUserInfo(UserInfoDTO userInfoDTO);

    void updatePassword(PwdUpdateDTO pwdUpdateDTO);

    PageResult getUserList(UserPageQueryDTO userPageQueryDTO);

    void changeUserStatus(UserStatusChangeDTO userStatusChangeDTO);

    Long getUserTotal();
}
